home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 25
/
Cream of the Crop 25.iso
/
doom
/
axxwar_1.zip
/
SOURCES
/
RANDITEM.QC
< prev
next >
Wrap
Text File
|
1997-02-27
|
2KB
|
85 lines
// AxxWars 0.8
void() NormalRegen; // AXXRI
float(entity e) CheckEntity =
{
if (e.classname == "weapon_nailgun")
return TRUE;
else if (e.classname == "weapon_supernailgun")
return TRUE;
else if (e.classname == "weapon_supershotgun")
return TRUE;
else if (e.classname == "weapon_rocketlauncher")
return TRUE;
else if (e.classname == "weapon_grenadelauncher")
return TRUE;
else if (e.classname == "weapon_lightning")
return TRUE;
else if (e.classname == "item_cells")
return TRUE;
else if (e.classname == "item_spikes")
return TRUE;
else if (e.classname == "item_shells")
return TRUE;
else if (e.classname == "item_rockets")
return TRUE;
else if (e.classname == "item_health")
return TRUE;
else if (e.classname == "item_artifact_invulnerability")
return TRUE;
else if (e.classname == "item_artifact_invisibility")
return TRUE;
else if (e.classname == "item_artifact_envirosuit")
return TRUE;
else if (e.classname == "item_artifact_super_damage")
return TRUE;
else if (e.classname == "item_armor1")
return TRUE;
else if (e.classname == "item_armor2")
return TRUE;
else if (e.classname == "item_armor3")
return TRUE;
return FALSE;
};
void() SUB_regen =
{
if (RandomItems != 1)
{ NormalRegen();
return; }
local vector vTemp;
local float fItemCount;
local entity eTemp;
self.model = self.mdl; // restore original model
self.solid = SOLID_TRIGGER; // allow it to be touched again
sound (self, CHAN_VOICE, "items/itembk2.wav", 1, ATTN_NORM); // play respawn sound
fItemCount=random()*20;
eTemp=findradius(self.origin,10000);
while (fItemCount>0)
{
eTemp=eTemp.chain;
fItemCount=fItemCount - 1;
if (!eTemp.chain)
{
setorigin (self,self.origin);
return;
}
}
while (CheckEntity(eTemp)!=TRUE)
eTemp=eTemp.chain;
vTemp=eTemp.origin;
setorigin (eTemp,self.origin);
setorigin (self, vTemp);
};